package com.prs.crm.service.stock;

import java.util.Collection;

import com.prs.crm.domain.stock.ClassAttribute;
import com.prs.crm.domain.stock.ProductClass;
import com.prs.crm.domain.sys.ChooseItem;
import com.prs.crm.service.BaseService;

/**
 * 产品分类服务
 * @author prs.chenzhi
 *
 */
public interface ProductClassService extends BaseService<ProductClass>{

	/**
	 * 获取所有产品分类
	 * @return
	 */
	 Collection<ProductClass> getProductClasses();
	 
	 /**
	  * 查找没有子节点的分类
	  * @return
	  */
	 Collection<ProductClass> findRootClasses();
	 
	 ClassAttribute getAttribute(Integer attrId);
	 
	 /**
	  * 保存分类属性
	  * @param pls
	  * @param attr
	  */
	 void saveAttribute(ProductClass pls ,ClassAttribute attr);
	 
	 /**
	  * 删除分类属性
	  * @param pls
	  * @param attr
	  */
	 void removeAttribute(ProductClass pls ,ClassAttribute attr);
	 
	 
	 /**
	  * 批量删除分类属性
	  * @param attrIds
	  */
	 void removeAttributes(Integer[] attrIds);
	 
	 /**
	  * 保存下拉选择框
	  * @param value
	  */
	 void saveAttrChooseItem(ClassAttribute attr,String value);
	 
	 /**
	  * 删除下拉框的值
	  */
	 void removeAttrItem(ClassAttribute attr,ChooseItem item);
}
